feat: ai samples implenting text generation/chat samples - #1070
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces a modular React and Vite-based application showcasing Firebase AI capabilities, including text generation and multi-turn chat. Feedback on the changes highlights several critical issues: an invalid model name ('gemini-3.5-flash') is used across multiple service files, which will cause runtime failures; the Chat view lacks error handling during initialization, potentially leading to application crashes; Firebase configuration values are hardcoded instead of using environment variables; and a deprecated @types/react-router-dom dependency is present, risking type conflicts with React Router v7.
75197b1 to
0b9284c
Compare
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
hsubox76
left a comment
There was a problem hiding this comment.
Apps look good so far.
Can you add instructions in the README.md about how to install and run the samples, and the different options? Cover
- how to put your project config in
- npm install
- how to run full app or individual samples
- where to go in the browser
- Can cut and paste code out of service.ts file for platform agnostic use
Also, add App Check debug initialization as we discussed (I guess just in firebaseAIService.ts).
…lude app check logic in firebaseAIService
…om/firebase/quickstart-js into feat/ai-samples-impl-text-gen/chat
|
Looked this over with Christina. The general structure of the changes look good. Other items still need work but we'll handle those in separate PRs |
* feat: add ai-samples skeleton with use-case feature folders * feat: add text-generation and chat isolated samples * feat: include skeleton for all features; add decoupled logic/scripts * feat: ai samples implenting text generation/chat samples (#1070) * feat: add text-generation and chat isolated samples * feat: include skeleton for all features; add decoupled logic/scripts * fix: handleResetChat in chat index.tsx * Apply suggestion from @gemini-code-assist[bot] Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Apply suggestion from @gemini-code-assist[bot] Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * update: README, update correct dependency to npm instead of yarn, include app check logic in firebaseAIService * fix model update * Simplifies app check by removing dev enviornment check. * removes the conditional check for existing Firebase app instances before initialization. --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * feat: multimodal feature with UI * delete extra firebase-config.ts file * fix: type safety and error handling in fileToGenerativePart * format fix * fix: double * * fix: empty array defaulting; simplified code by converting files variable into array earlier * update: Add comment about file size to viewer and point them to official Firebase SDK Documentation * adds: structured output demo with JSON and enum schemas. adds: UI to switch between the modes, input prompts, and display the responses. * update comment with firebase documentation * fix: MIME type * move comment about file size from index file to service file * adjust error handling * adds: structured output demo with JSON and enum schemas. adds: UI to switch between the modes, input prompts, and display the responses. * feat(ai): add function calling service * feat(ai): add UI component and standardize error handling * fix: updated function-calling to handle parallel function-calling. * delete comment * Trigger Build --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Implement text-generation and chat samples.
Add decoupled logic so that user can run script to start either sample.
Updates to the README file and adds AppCheck debug intialization.